package 二叉树的第k个结点;
//题目描述
//给定一棵二叉搜索树，请找出其中的第k小的结点。
// 例如， （5，3，7，2，4，6，8）    中，按结点数值大小顺序第三小结点的值为4。
public class Solution
{
    TreeNode treeNode =null;
    int count=0;
    TreeNode KthNode(TreeNode pRoot, int k)
    {
        //方法一：中序遍历，即为升序排列，第k个结点就是所求
        //判断输入
        if (pRoot==null||k<=0)
            return null;
        dfs(pRoot, k);
        return treeNode;
    }
    void dfs(TreeNode node,int k)
    {
        if (count<k&&node.left!=null)
            dfs(node.left,k);
        if (++count==k)
            treeNode=node;
        if (count<k&&node.right!=null)
            dfs(node.right,k);
    }
}
